Add AI policy to contribution guide#3959
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3959 +/- ##
==========================================
+ Coverage 90.11% 90.13% +0.02%
==========================================
Files 908 909 +1
Lines 108378 109274 +896
==========================================
+ Hits 97660 98492 +832
- Misses 10718 10782 +64
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Co-authored-by: Miranda Mundt <55767766+mrmundt@users.noreply.github.com> Co-authored-by: John Siirola <jsiirola@users.noreply.github.com>
Removed redundant instruction about marking PR review comments as resolved.
| Review process: | ||
| - [ ] ALL AI-generated content was rewritten by the PR author | ||
| - [ ] ALL AI-generated content was thoroughly reviewed and verified by the PR author | ||
| - [ ] AI-generated content was contributed directly to the repository |
There was a problem hiding this comment.
Is the intent behind this line to check if "CoPilot did it for me"? If so, I wouldn't say it's entirely clear.
There was a problem hiding this comment.
I think this section is meant to help us understand the extent to which the contributor reviewed the AI-generated content but this was a change suggested by @jsiirola so I'm hoping he'll also chime in.
There was a problem hiding this comment.
The original template was a request for free-response from the author. My concern is that they won't know what we are looking for and could write anything from a novel to the equivalent of "LGTM". The idea here is for a simple template to prompt them to to directly answer our most important questions.
There was a problem hiding this comment.
Oh I agree 100% with the checklist. This specific line is hard to parse what it means, though. Does it mean, "I let copilot commit for me"?
There was a problem hiding this comment.
Ahh... right. The intent was to indicate that AI-generated code was included verbatim, potentially with no user involvement. My thinking at the time is that the "review process" should be a "radio button" (pick exactly one)... and the third option was a way of saying "none of the above" (and therefore volunteering the PR for summary closure).
The other thing that came to mind as I was reading the references that @blnicho circulated was that we should probably be concerned when any AI code is committed verbatim, as the copyright provenance of that code is ambiguous (e.g., did the AI regenerate copyrighted code it was trained on?)
There was a problem hiding this comment.
So is the "Review Process" section only for reviewers, or are submitters still supposed to be selecting something from there?
I would say, "None of us are lawyers, and the courts don't even know what's happening there. Let them figure it out and then we can adjust our terms." We already have the expectation of what license they need to be using when contributing here, and we will be covering our butts by introducing this policy at all (because we can have traceability into "PRs where AI was used").
Summary/Motivation:
This PR adds an AI contribution policy to our contributor guide based on discussions we've had at the Pyomo developer meetings. This is meant to be a "living" policy that will be regularly updated as the tools and our observations evolve. Feedback and comments are welcome.
Changes proposed in this PR:
Legal Acknowledgement
By contributing to this software project, I have read the contribution guide and agree to the following terms and conditions for my contribution: